Kotlinのinline class
特定の型をラップするためのクラス
実行時にはそのラップされた型として扱われる
例
code:kt
inline class Password(val value: String)
code:kt
inline class EventId(val value: Long)
inline class Organizer(val value: String)
inline class Title(val value: String)
inline class Description(val value: String)
data class Event(
val id: EventId
val title: Title,
val organizer: Organizer,
val description: Description,
val date: LocalDate
)
個々の型をinlien classでwrapすることで、同じStringでも区別できる